package com.xujie.sportsmeeting.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xujie.sportsmeeting.entity.CompetitionEvent;

/**
 * 比赛项目服务接口
 */
public interface CompetitionEventService extends IService<CompetitionEvent> {

    /**
     * 根据项目编码查询项目
     */
    CompetitionEvent findByEventCode(String eventCode);

    /**
     * 检查项目编码是否存在
     */
    boolean existsByEventCode(String eventCode);

    /**
     * 检查项目是否可以报名
     */
    boolean canRegister(Long eventId);

    /**
     * 获取项目当前报名人数
     */
    long getRegistrationCount(Long eventId);

    /**
     * 更新项目状态
     */
    boolean updateEventStatus(Long eventId, Integer status);
}
